Connectionless computer networks, such as Internet Protocol (IP) networks, are typically formed by connecting multiple routers to each other using either point-to-point connections or the Data Link Layer of the International Standard Organization's Open System Interconnect (ISO/OSI) network model, commonly referred to as “layer 2.” One of the main features of a connectionless network is the ability of a network node, such as a PC, to connect directly to any of the routers and send/receive packetized data to/from any other network node connected to any other router. To accomplish this each node is typically uniquely identified by a unique network address, known in IP networks as an IP address.
Routing of packets in a connectionless computer network is now described by way of example with reference to FIG. 1. When a node A (100) sends a packet to a node B (102), A (100) must specify the address of B (102) as the destination address of the packet. The first router R1 (108) that accepts the packet forwards the packet to the next router R2 (110) on the path to B (102), whereupon R2 (110) forwards the packet to the next router R3 (112) on the path to B (102), and so on. When the packet reaches the router to which B (102) is directly connected, it is forwarded to B (102). It may thus be seen that, for any given destination address to which a packet is addressed, every router in the network should know the packet's next “hop,” i.e., to which next router the packet is to be forwarded. Each router typically maintains this information in a routing table, shown as routing tables 116 and 118, which contains a mapping between addresses or address groups, such as IP subnets, and the next hop for packets destined for these addresses.
When a link connecting two routers in a network fails, a partitioning of the network may occur. Thus in FIG. 1, if the link between R1 (108) and R2 (110) fails, nodes A (100) and C (104) can still communicate with each other but not with nodes B (102) and D (106), and vice versa. Each router will typically automatically detect this situation and update its routing table accordingly, such as by eliminating entries whose next hop is unreachable. However, nodes in one partition may still try to send packets to nodes in the other partition. When this occurs, a “no route to destination” error is typically generated and logged by the first router to detect the problem, which then reports the problem to the network management system (NMS). The NMS must then decide what action to take, such as tracing the error to its root cause. In large networks where there may be many active communication sessions between nodes at one time, a single link failure event might cause numerous “no route to destination” notifications to be generated in every router in one partition which receives packets that are destined for the other partition and reported to the NMS. Thus, where the existence of a link failure is already known to the NMS, it would be advantageous to know whether or not a routing error is caused by the link failure, as well as which nodes might be affected by the link failure, obviating the need for the NMS to take action that it would normally take.